﻿namespace MapleRock.P2PEmulator.RGR
{
  using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Text;

  using MapleRock.P2PEmulator.Core;

  internal sealed class RgrData
  {
    static RgrData()
    {
      RgrData.Instance = new RgrData();
    }

    private RgrData()
    {
      this.VariableParameterIndex = -1;
      this.PeersNumberIndex = -1;
      this.MessageLossProbIndex = -1;
      this.DimensionsIndex = -1;
      this.MaxPeerLinksIndex = -1;
    }

    public static RgrData Instance { get; private set; }

    public XmlInputData InputData { get; set; }

    public int VariableParameterIndex { get; set; }

    public string VariableParameterAbbr { get; set; }

    public string VariableParameterName { get; set; }

    public int PeersNumberIndex { get; set; }

    public int MessageLossProbIndex { get; set; }

    public int DimensionsIndex { get; set; }

    public int MaxPeerLinksIndex { get; set; }

    public RgrExperiment Experiment { get; set; }
  }
}
